✅websocketを使い回す (scrapbox-userscript-std)
これは一つのsocket通信を用いて何回も編集操作を行う関数
こいつの実装がよくないので直す
今まで
これから
渡さない場合は従来どおり内部でSocketを作り、処理が終了した段階で破棄する
code:ts
const socket = await makeSocket(); // Socketの作成
// 一番最後の変数にsocketを渡す
await patch(project, title, updater, { socket });
await deletePage(project, title, { socket });
await pin(project, title, { socket });
for await (const event of listen(eventname, { socket })) {
// ...
}
pros
実装を統一できる
違うページの編集操作を一つのsocket上で行える
やっていないこと
commitとcursorの購読関数の実装
listenPage(project, title, ["commit", "cursor"], { socket });
2022-03-03
17:43:00 connect()とdisconnect()の処理をミスってた
接続・遮断したあとにlistenerを登録していたので、永久に接続・遮断eventを取得できなかった